Skip to content

chore(renovate): hold the generator and analyzer at the Roslyn baseline - #59

Merged
glennawatson merged 1 commit into
mainfrom
chore/lock-roslyn-analyzer-baseline
Aug 2, 2026
Merged

chore(renovate): hold the generator and analyzer at the Roslyn baseline#59
glennawatson merged 1 commit into
mainfrom
chore/lock-roslyn-analyzer-baseline

Conversation

@glennawatson

Copy link
Copy Markdown
Contributor

What kind of change does this PR introduce?

Build configuration.

What is the new behavior?

  • Microsoft.CodeAnalysis.CSharp and Microsoft.CodeAnalysis.CSharp.Workspaces no longer receive dependency update PRs. The generator and analyzer stay on the Roslyn 4.8.0 baseline until someone raises the minimum supported SDK deliberately.
  • Microsoft.CodeAnalysis.Analyzers continues to update. It supplies analyzer-authoring rules and has no bearing on which compilers can load the generator.

What is the current behavior?

Both packages were treated as ordinary dependencies, so each Roslyn release produced an update PR proposing to raise the floor. #45 is the current one, moving 4.8.0 to 4.14.0.

The pin is a compatibility decision rather than a maintenance lag, and the reason is already recorded in both project files: the generator and analyzer ship in the version-less analyzers/dotnet/cs folder, and a compiler will not load a generator or analyzer built against a newer Roslyn than itself. Building against 4.8.0 is what keeps consumers on VS 2022 17.8 and the .NET 8.0.1xx SDK working. Accepting one of those update PRs would silently drop them.

What might this PR break?

  • None for consumers. Nothing about the shipped packages changes.
  • The trade-off is that these two packages will not be updated by automation, so the generator remains limited to APIs present in Roslyn 4.8. That constraint already applies and is documented in ReactiveUI.Binding.SourceGenerators.csproj. Raising the baseline is now an explicit edit to the project files and this rule, which is the intent.

Checklist

  • I have read the Contribute guide
  • Tests have been added or updated (for bug fixes / features)
  • Docs have been added or updated (for bug fixes / features)
  • Changes target the main branch
  • PR title follows Conventional Commits

Additional information

The rule matches the two package names exactly rather than a Microsoft.CodeAnalysis.* prefix, so a future package under that prefix is not silently frozen along with them.

Supersedes #45, which should be closed rather than merged.

- Microsoft.CodeAnalysis.CSharp and .CSharp.Workspaces no longer receive update
  PRs. Both ship in the version-less analyzers/dotnet/cs folder, and a compiler
  refuses to load a generator built against a newer Roslyn than itself, so
  raising the 4.8.0 floor drops every consumer on an older SDK.
- Microsoft.CodeAnalysis.Analyzers keeps moving; it supplies analyzer-authoring
  rules and has no bearing on the load floor.
@glennawatson
glennawatson merged commit 2896c13 into main Aug 2, 2026
8 checks passed
@glennawatson
glennawatson deleted the chore/lock-roslyn-analyzer-baseline branch August 2, 2026 04:20
@sonarqubecloud

sonarqubecloud Bot commented Aug 2, 2026

Copy link
Copy Markdown

@codecov

codecov Bot commented Aug 2, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.63%. Comparing base (244c2f2) to head (c7f1bd1).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #59   +/-   ##
=======================================
  Coverage   97.63%   97.63%           
=======================================
  Files         228      228           
  Lines        7772     7772           
  Branches     1066     1066           
=======================================
  Hits         7588     7588           
  Misses        143      143           
  Partials       41       41           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant